Computing systems, such as laptops, netbooks, workstations, and desktop computers typically include a central processing unit (CPU), also known as a host processor, running an operating system for carrying out various functionalities of the computing system. The host processor generally includes software modules, known as drivers, for interacting with and controlling various peripheral devices connected to the computing systems for providing various functionalities of the computing systems. The peripheral devices include, for instance, mass storage devices, media devices, such as audio players for providing output of audio files playing in the computing system, and modems for connecting to a network environment. For example, the mass storage and media devices may be universal serial bus (USB) based devices.
Further, the system drivers generally interact with the peripheral devices through hardware interfaces, known as host controllers provided in the computing systems for controlling the peripheral devices. For example, the computing systems include USB host controllers for controlling and communicating with the USB devices connected to the computing systems.